home *** CD-ROM | disk | FTP | other *** search
/ Cracking 2 / Cracking II..iso / Kompresni & kodovaci programy / ucl-0.91 / acconfig / m4 / chklib.m4 < prev    next >
M4 Source File  |  1999-06-06  |  2KB  |  50 lines

  1. dnl ### Checking for libraries
  2.  
  3.  
  4. dnl undefine([AC_CHECK_LIB])
  5. dnl AC_CHECK_LIB(LIBRARY, FUNCTION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
  6. dnl              [, OTHER-LIBRARIES]]])
  7. AC_DEFUN(AC_CHECK_LIB,
  8. [AC_MSG_CHECKING([for $2 in -l$1])
  9. dnl Use a cache variable name containing both the library and function name,
  10. dnl because the test really is for library $1 defining function $2, not
  11. dnl just for library $1.  Separate tests with the same $1 and different $2s
  12. dnl may have different results.
  13. ac_lib_var=`echo $1['_']$2 | sed 'y%./+-:%__p__%'`
  14. AC_CACHE_VAL(ac_cv_lib_$ac_lib_var,
  15. [ac_save_LIBS="$LIBS"
  16. LIBS="-l$1 $5 $LIBS"
  17. AC_TRY_LINK(dnl
  18. ifelse(AC_LANG, [FORTRAN77], ,
  19. ifelse([$2], [main], , dnl Avoid conflicting decl of main.
  20. [/* Override any gcc2 internal prototype to avoid an error.  */
  21. ]ifelse(1, 1, [#ifdef __cplusplus
  22. extern "C"
  23. #endif
  24. ])dnl
  25. [/* We use char because int might match the return type of a gcc2
  26.     builtin and then its argument prototype would still apply.  */
  27. char $2();
  28. ])),
  29.             [$2()],
  30.             eval "ac_cv_lib_$ac_lib_var=yes",
  31.             eval "ac_cv_lib_$ac_lib_var=no")
  32. LIBS="$ac_save_LIBS"
  33. ])dnl
  34. if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
  35.   AC_MSG_RESULT(yes)
  36.   ifelse([$3], ,
  37. [changequote(, )dnl
  38.   ac_tr_lib=HAVE_LIB`echo $1 | sed -e 's/[^a-zA-Z0-9_]/_/g' \
  39.     -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
  40. changequote([, ])dnl
  41.   AC_DEFINE_UNQUOTED($ac_tr_lib)
  42.   LIBS="-l$1 $LIBS"
  43. ], [$3])
  44. else
  45.   AC_MSG_RESULT(no)
  46. ifelse([$4], , , [$4
  47. ])dnl
  48. fi
  49. ])
  50.